【Python】Numpy之各种创建array的方法及Numpy中的函数使用 |
您所在的位置:网站首页 › python 创建数组不指定长度 › 【Python】Numpy之各种创建array的方法及Numpy中的函数使用 |
学习Python的童鞋,对numpy都不陌生,小白最近学习了一些Numpy的方法,发现Numpy真的很强大。 目录 1.如何创建array? 1.1tuple函数 1.2list函数 2.创建一些特殊的矩阵 2.1生成相应大小的零矩阵,默认数据类型是float 2.2生成相应大小的1矩阵,默认数据类型是float 2.3生成一个随机元素的矩阵,大小按照参数定义,默认数据类型是float 2.4生成相应大小的一个对角线元素为1,其余位置为0的矩阵 3.numpy的一些函数 3.1函数说明:arange([start,] stop[, step,], dtype=None) 3.2函数说明:numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) 3.3random函数 Numpy:本质的数字化的python,当然也可以存放string类型的数据。 1.如何创建array?其中,dtype用来指定数据类型,int32指,存放int类型最高32位,不过也可以去掉32,直接写int。数据类型float都可以定义数据的长度,也可以不定义。 1.1tuple函数 tuple=(1,2,3,4) a=np.array(tuple,dtype='int32') a结果为: array([1, 2, 3, 4]) 1.2list函数 list=[1,2,3,4] b=np.array(list,dtype='int32') b结果为: array([1, 2, 3, 4])如果同样是传入int类型的list,但是指定为float类型,如下: list=[1,2,3,4] c=np.array(list,dtype='float') c结果为: array([1., 2., 3., 4.])这里自动就将数据转成float类型了。 上面都是单list或者单tuple传入,那么一样可以混合传入: d=np.array([list,tuple]) d d.shape array([[1, 2, 3, 4], [1, 2, 3, 4]]) (2, 4)这里安利一个小功能,查看array的类型(shape函数),从结果可以看出是一个2行4列的数组。 2.创建一些特殊的矩阵 2.1生成相应大小的零矩阵,默认数据类型是float用法:zeros(shape, dtype=float, order='C')参数: shape:形状 dtype:数据类型,可选参数,默认numpy.float64 dtype类型:t ,位域,如t4代表4位 b,布尔值,true or false i,整数,如i8(64位) u,无符号整数,u8(64位) f,浮点数,f8(64位) c,浮点负数, o,对象, s,a,字符串,s24 u,unicode,u24 order:可选参数,c代表与c语言类似,行优先;F代表列优先 2.2生成相应大小的1矩阵,默认数据类型是float用法:numpy.ones(shape, dtype=None, order=’C’) 参数: shape:形状 dtype:数据类型,可选参数,默认numpy.float64 order:可选参数,c代表与c语言类似,行优先;F代表列优先 2.3生成一个随机元素的矩阵,大小按照参数定义,默认数据类型是float用法:empty(shape[, dtype, order]) 参数:shape : 整数或者整型元组定义返回数组的形状; dtype : 数据类型,可选定义返回数组的类型。 order : {‘C’, ‘F’}, 可选规定返回数组元素在内存的存储顺序:C(C语言)-rowmajor;F(Fortran)column-major 2.4生成相应大小的一个对角线元素为1,其余位置为0的矩阵用法:numpy.eye(N, M=None, k=0, dtype=, order='C') 参数: N:int值,行数。 M:int值,列数,如果没有则默认为N。 dtype:返回的数据元素的格式,默认为float。 order:1.14.0版本后,可选参数{'C', 'F'} 下面是对应的小例子~ 1)np.zeros([3,3]) array([[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]]) 2)np.ones([3,4]) array([[1., 1., 1., 1.], [1., 1., 1., 1.], [1., 1., 1., 1.]]) 3)np.empty([2,3]) array([[3.46e-322, 0.00e+000, 0.00e+000], [0.00e+000, 0.00e+000, 0.00e+000]]) 4)np.eye(4) array([[1., 0., 0., 0.], [0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.]]) 3.numpy的一些函数 3.1函数说明:arange([start,] stop[, step,], dtype=None)根据start与stop指定的范围以及step设定的步长,生成一个 ndarray。 3.2函数说明:numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)在指定的间隔内返回均匀间隔的数字。 返回num均匀分布的样本,在[start, stop]。 这个区间的端点可以任意的被排除在外。 3.3random函数1.np.random.random((a,b)) a代表随机生成的个数,b代表区间,如果b=10就是从0-10中随机。2.numpy.random.rand(a0, a1, ..., an) 生成一个[0,1)之间的随机浮点数或N维浮点数组。3.numpy.random.randn(a0, a1, ..., an) 生成一个浮点数或N维浮点数组,取数范围:正态分布的随机样本数。4.numpy.random.standard_normal(size=None) 生产一个浮点数或N维浮点数组,取数范围:标准正态分布随机样本5.numpy.random.randint(low, high=None, size=None, dtype='l') 生成一个整数或N维整数数组,取数范围:若high不为None时,取[low,high)之间随机整数,否则取值[0,low)之间随机整数。6.numpy.random.random_integers(low, high=None, size=None) 生成一个整数或一个N维整数数组,取值范围:若high不为None,则取[low,high]之间随机整数,否则取[1,low]之间随机整数。7.numpy.random.random_sample(size=None) 生成一个[0,1)之间随机浮点数或N维浮点数组。8.numpy.random.choice(a, size=None, replace=True, p=None) 从序列中获取元素,若a为整数,元素取值为np.range(a)中随机数;若a为数组,取值为a数组元素中随机元素。9.numpy.random.shuffle(x) 对X进行重排序,如果X为多维数组,只沿第一条轴洗牌,输出为None。10.numpy.random.permutation(x) 与numpy.random.shuffle(x)函数功能相同,两者区别:peumutation(x)不会修改X的顺序。 1)np.arange(2,10,2) array([2, 4, 6, 8]) 2)np.linspace(0,10,3) array([ 0., 5., 10.]) 3)a = np.random.random([4,4]) [[0.94927293 0.11516777 0.15205786 0.36055847] [0.24878514 0.33557077 0.30436868 0.70995221] [0.39684346 0.18775942 0.03005964 0.57851862] [0.22523724 0.59238284 0.86613604 0.29699464]]以上是对numpy的一些简单函数的使用及创建,欢迎大家交流学习哦。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |